package leetcode.题库.二叉树;

import leetcode.题库.pubclass.TreeNode;


/**
 * 验证二叉搜索树
 *
 * @author yanzhenming
 * @date 2023/4/16  1:51
 */

/**
 * 描述
 */


/**
 * 思路
 *
 * 设置最大值最小值的思路
 */
public class Solution98 {
    public boolean isValidBST(TreeNode root) {
        return isValidBST(root, Long.MIN_VALUE, Long.MAX_VALUE);

    }
    public boolean isValidBST(TreeNode root, long min, long max) {
        if (root == null) return true;
        if (root.val >= max || root.val <= min) return false;
        return isValidBST(root.left, min, root.val)
                && isValidBST(root.right, root.val, max);
    }
}
